Skip to content

PR for next LTS release (0.68.7) - #2330

Merged
vrutkovs merged 13 commits into
release-0.68from
next-release-0.68.7
Jul 27, 2026
Merged

PR for next LTS release (0.68.7)#2330
vrutkovs merged 13 commits into
release-0.68from
next-release-0.68.7

Conversation

@vrutkovs

Copy link
Copy Markdown
Collaborator

No description provided.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 1 file

Re-trigger cubic

@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch from 5d46f05 to f10ee67 Compare June 30, 2026 07:01

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 6 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="docs/CHANGELOG.md">

<violation number="1" location="docs/CHANGELOG.md:16">
P2: Custom agent: **Changelog Review Agent**

Changelog entry describes internal implementation detail (adding a struct field) instead of a user-visible fix. The rule requires user-centric explanations and prohibits describing internal implementation details.</violation>
</file>

Tip: Review your code locally with the cubic CLI to iterate faster.

Fix all with cubic | Re-trigger cubic

Comment thread docs/CHANGELOG.md

## tip

* BUGFIX: [vmanomaly](https://docs.victoriametrics.com/operator/resources/vmanomaly/): add missing `scatter_infer_jobs` field to the periodic scheduler config struct. See [#2328](https://github.com/VictoriaMetrics/operator/issues/2328).

@cubic-dev-ai cubic-dev-ai Bot Jun 30, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Custom agent: Changelog Review Agent

Changelog entry describes internal implementation detail (adding a struct field) instead of a user-visible fix. The rule requires user-centric explanations and prohibits describing internal implementation details.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At docs/CHANGELOG.md, line 16:

<comment>Changelog entry describes internal implementation detail (adding a struct field) instead of a user-visible fix. The rule requires user-centric explanations and prohibits describing internal implementation details.</comment>

<file context>
@@ -13,6 +13,8 @@ aliases:
 
 ## tip
 
+* BUGFIX: [vmanomaly](https://docs.victoriametrics.com/operator/resources/vmanomaly/): add missing `scatter_infer_jobs` field to the periodic scheduler config struct. See [#2328](https://github.com/VictoriaMetrics/operator/issues/2328).
+
 ## [v0.68.6](https://github.com/VictoriaMetrics/operator/releases/tag/v0.68.6)
</file context>
Suggested change
* BUGFIX: [vmanomaly](https://docs.victoriametrics.com/operator/resources/vmanomaly/): add missing `scatter_infer_jobs` field to the periodic scheduler config struct. See [#2328](https://github.com/VictoriaMetrics/operator/issues/2328).
* BUGFIX: [vmanomaly](https://docs.victoriametrics.com/operator/resources/vmanomaly/): allow configuring `scatter_infer_jobs` in the periodic scheduler. Previously this option was missing and its value was silently ignored. See [#2328](https://github.com/VictoriaMetrics/operator/issues/2328).
Fix with cubic

Comment thread Makefile Outdated
-procs=$(E2E_TESTS_CONCURRENCY) \
-randomize-all \
-timeout=60m \
-timeout=90m \

@AndrewChubatiuk AndrewChubatiuk Jul 1, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vrutkovs let's copy CI changes from master to LTS branch instead

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea

@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch 3 times, most recently from ff2a385 to d09a187 Compare July 1, 2026 08:01
vrutkovs and others added 2 commits July 1, 2026 10:43
….12.2 (#2149)

* chore(deps): update module github.com/golangci/golangci-lint/v2 to v2.12.2

* chore: use reflect.Pointer to fix `inline: Constant reflect.Ptr should be inlined`

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Vadim Rutkovsky <vadim@vrutkovs.eu>
@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch from a53bc08 to a78e807 Compare July 1, 2026 08:43

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3 issues found across 31 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="internal/controller/operator/factory/vmsingle/rbac.go">

<violation number="1" location="internal/controller/operator/factory/vmsingle/rbac.go:76">
P1: VMSingle reconciliation never invokes this function, so no Role, RoleBinding, ClusterRole, or ClusterRoleBinding is created for a managed ServiceAccount. Wire it into `CreateOrUpdate` after ServiceAccount reconciliation, passing `config.MustGetBaseConfig().WatchNamespaces`; current tests only exercise the helper directly.</violation>
</file>

<file name="api/operator/v1beta1/vmprobe_types.go">

<violation number="1" location="api/operator/v1beta1/vmprobe_types.go:57">
P2: Replacing `+deprecated` with `+notes` drops the machine-readable OpenAPI deprecation annotation for these two fields. `+deprecated` is a standard k8s `openapi-gen` marker that generates `deprecated: true` in the OpenAPI spec; `+notes` is not recognized by any standard tool. Consumers such as API clients, IDEs, and generated docs will no longer see `StaticConfig` and `Ingress` as deprecated. If the project intended a custom annotation format, add a processor for `+notes` or keep both markers.</violation>
</file>

<file name="docs/CHANGELOG.md">

<violation number="1" location="docs/CHANGELOG.md:18">
P3: VMAnomaly version in changelog tip section says v1.28.6 but the code at HEAD has v1.29.7 (up from v1.29.6 on release-0.68). Update version to v1.29.7 and fix the link anchor to #v1297.</violation>
</file>

Tip: instead of fixing issues one by one fix them all with cubic
Tip: Review your code locally with the cubic CLI to iterate faster.

Re-trigger cubic


// createK8sAPIAccess creates RBAC access rules for vmsingle.
// namespaces is the list of watched namespaces; an empty slice means cluster-wide access.
func createK8sAPIAccess(ctx context.Context, rclient client.Client, cr, prevCR *vmv1beta1.VMSingle, namespaces []string) error {

@cubic-dev-ai cubic-dev-ai Bot Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: VMSingle reconciliation never invokes this function, so no Role, RoleBinding, ClusterRole, or ClusterRoleBinding is created for a managed ServiceAccount. Wire it into CreateOrUpdate after ServiceAccount reconciliation, passing config.MustGetBaseConfig().WatchNamespaces; current tests only exercise the helper directly.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At internal/controller/operator/factory/vmsingle/rbac.go, line 76:

<comment>VMSingle reconciliation never invokes this function, so no Role, RoleBinding, ClusterRole, or ClusterRoleBinding is created for a managed ServiceAccount. Wire it into `CreateOrUpdate` after ServiceAccount reconciliation, passing `config.MustGetBaseConfig().WatchNamespaces`; current tests only exercise the helper directly.</comment>

<file context>
@@ -0,0 +1,228 @@
+
+// createK8sAPIAccess creates RBAC access rules for vmsingle.
+// namespaces is the list of watched namespaces; an empty slice means cluster-wide access.
+func createK8sAPIAccess(ctx context.Context, rclient client.Client, cr, prevCR *vmv1beta1.VMSingle, namespaces []string) error {
+	if len(namespaces) == 0 {
+		if err := ensureCRExist(ctx, rclient, cr, prevCR); err != nil {
</file context>
Fix with cubic

Comment thread internal/controller/operator/factory/vmsingle/vmsingle.go
Comment thread internal/controller/operator/factory/vmsingle/vmsingle.go
Comment thread internal/controller/operator/factory/finalize/vmagent.go
type VMProbeTargets struct {
// StaticConfig defines static targets which are considers for probing.
// +deprecated={deprecated_in: "v0.68.0", removed_in: "v0.71.0", replacements: {static}}
// +notes={deprecated_in: "v0.68.0", removed_in: "v0.71.0", replacements: {static}}

@cubic-dev-ai cubic-dev-ai Bot Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Replacing +deprecated with +notes drops the machine-readable OpenAPI deprecation annotation for these two fields. +deprecated is a standard k8s openapi-gen marker that generates deprecated: true in the OpenAPI spec; +notes is not recognized by any standard tool. Consumers such as API clients, IDEs, and generated docs will no longer see StaticConfig and Ingress as deprecated. If the project intended a custom annotation format, add a processor for +notes or keep both markers.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At api/operator/v1beta1/vmprobe_types.go, line 57:

<comment>Replacing `+deprecated` with `+notes` drops the machine-readable OpenAPI deprecation annotation for these two fields. `+deprecated` is a standard k8s `openapi-gen` marker that generates `deprecated: true` in the OpenAPI spec; `+notes` is not recognized by any standard tool. Consumers such as API clients, IDEs, and generated docs will no longer see `StaticConfig` and `Ingress` as deprecated. If the project intended a custom annotation format, add a processor for `+notes` or keep both markers.</comment>

<file context>
@@ -54,7 +54,7 @@ type VMProbeSpec struct {
 type VMProbeTargets struct {
 	// StaticConfig defines static targets which are considers for probing.
-	// +deprecated={deprecated_in: "v0.68.0", removed_in: "v0.71.0", replacements: {static}}
+	// +notes={deprecated_in: "v0.68.0", removed_in: "v0.71.0", replacements: {static}}
 	// +optional
 	StaticConfig *VMProbeTargetStatic `json:"staticConfig,omitempty"`
</file context>
Fix with cubic

Comment thread docs/CHANGELOG.md
Comment thread docs/CHANGELOG.md Outdated

* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VM apps to [v1.147.0](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.147.0) version
* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VT apps to [v0.9.4](https://github.com/VictoriaMetrics/VictoriaTraces/releases/tag/v0.9.4) version.
* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VMAnomaly to [v1.28.6](https://docs.victoriametrics.com/anomaly-detection/changelog/#v1286) version

@cubic-dev-ai cubic-dev-ai Bot Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: VMAnomaly version in changelog tip section says v1.28.6 but the code at HEAD has v1.29.7 (up from v1.29.6 on release-0.68). Update version to v1.29.7 and fix the link anchor to #v1297.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At docs/CHANGELOG.md, line 18:

<comment>VMAnomaly version in changelog tip section says v1.28.6 but the code at HEAD has v1.29.7 (up from v1.29.6 on release-0.68). Update version to v1.29.7 and fix the link anchor to #v1297.</comment>

<file context>
@@ -13,7 +13,16 @@ aliases:
 
+* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VM apps to [v1.147.0](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.147.0) version
+* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VT apps to [v0.9.4](https://github.com/VictoriaMetrics/VictoriaTraces/releases/tag/v0.9.4) version.
+* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VMAnomaly to [v1.28.6](https://docs.victoriametrics.com/anomaly-detection/changelog/#v1286) version
+
+* SECURITY: [vmagent](https://docs.victoriametrics.com/operator/resources/vmagent/), [vmsingle](https://docs.victoriametrics.com/operator/resources/vmsingle/): remove cluster-wide `secrets` and `configmaps` permissions from the operator-managed `ClusterRole`. Secret access for the config-reloader is now granted via a namespace-scoped `Role` limited to the single operator-managed config secret. For `vmsingle` in ingest-only mode (the default), no secret or configmap permissions are granted at all.
</file context>
Suggested change
* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VMAnomaly to [v1.28.6](https://docs.victoriametrics.com/anomaly-detection/changelog/#v1286) version
* Dependency: [vmoperator](https://docs.victoriametrics.com/operator/): Updated default versions for VMAnomaly to [v1.29.7](https://docs.victoriametrics.com/anomaly-detection/changelog/#v1297) version
Fix with cubic

@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch from 881eb0f to c6dad2b Compare July 23, 2026 17:46
* internal/config: update VM_METRICS_VERSION to v1.147.0

Changelog [v1.147.0](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/docs/victoriametrics/changelog/CHANGELOG.md#v11470)

Signed-off-by: Max Kotliar <mkotlyar@victoriametrics.com>

* cleanup changelog

---------

Signed-off-by: Max Kotliar <mkotlyar@victoriametrics.com>
@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch from c6dad2b to d533ba7 Compare July 23, 2026 18:28
Comment thread internal/controller/operator/factory/vmsingle/rbac.go Outdated
@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch 3 times, most recently from ae15efd to 9abe297 Compare July 27, 2026 13:01
}
if rw.OAuth2 != nil && rw.OAuth2.ClientSecret != nil {
return true
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no TLS secrets here

@@ -0,0 +1,228 @@
package vmsingle

@AndrewChubatiuk AndrewChubatiuk Jul 27, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vmsingle supports scraping only starting 0.69.0, so rbac is not needed

@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch from 9abe297 to 102c893 Compare July 27, 2026 14:42
@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch from 102c893 to 0e60692 Compare July 27, 2026 14:44

@AndrewChubatiuk AndrewChubatiuk left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@vrutkovs
vrutkovs force-pushed the next-release-0.68.7 branch from 0e60692 to 0f7e1d6 Compare July 27, 2026 15:03
@vrutkovs
vrutkovs merged commit 644abd7 into release-0.68 Jul 27, 2026
6 checks passed
@vrutkovs
vrutkovs deleted the next-release-0.68.7 branch July 27, 2026 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants